gtk+3.0.git
3 years agowayland: Translate STRING/UTF8_STRING selection atoms to mimetypes
Carlos Garnacho [Mon, 3 Oct 2022 08:35:48 +0000 (10:35 +0200)]
wayland: Translate STRING/UTF8_STRING selection atoms to mimetypes

Since the GDK API layer in 3.x is considerably tied to X11 details,
it makes sense to provide this bit of translation in case the app
uses these exclusively and does not use actual mimetype strings.
Provide this bit of translation of X11 selection atoms to mimetypes.

While at it, use the right zwp_primary_selection_source_v1 API with
primary selection data sources. From the looks of it, this just
happened to work.

Closes: https://gitlab.gnome.org/GNOME/gtk/-/issues/5217
3 years agoUpdate Polish translation
Piotr Drąg [Sun, 28 Aug 2022 21:32:39 +0000 (23:32 +0200)]
Update Polish translation

3 years agoUpdate Croatian translation
Goran Vidović [Sun, 28 Aug 2022 14:43:05 +0000 (14:43 +0000)]
Update Croatian translation

3 years agoFixes to Catalan translation
Jordi Mas [Fri, 26 Aug 2022 18:49:42 +0000 (20:49 +0200)]
Fixes to Catalan translation

3 years agoUpdate Abkhazian translation
Nart Tlisha [Thu, 25 Aug 2022 10:27:20 +0000 (10:27 +0000)]
Update Abkhazian translation

3 years ago[quartz] find_toplevel_under_pointer should not return _gdk_root
John Ralls [Fri, 22 Jul 2022 17:54:27 +0000 (10:54 -0700)]
[quartz] find_toplevel_under_pointer should not return _gdk_root

The macOS WM has no root window. We fake one with a 1x1 window at the
origin that has no associated NSWindow. If the pointer is not on a
realized GdkWindow the hierarchical search will place it in the root
window even if it's nowhere near it. That's not valid, but returning it
from find_toplevel_under_pointer prevents Gdk from discovering when the
pointer is really over a GdkWindow. Return NULL instead so that the window
discovery is re-performed.

3 years agoMerge branch 'wip/smcv/glib-2-74' into 'gtk-3-24'
Matthias Clasen [Sun, 21 Aug 2022 11:55:57 +0000 (11:55 +0000)]
Merge branch 'wip/smcv/glib-2-74' into 'gtk-3-24'

[GTK 3] Avoid repeated g_log_set_writer_func in tests

See merge request GNOME/gtk!4968

3 years agoAvoid repeated g_log_set_writer_func in tests
Simon McVittie [Sat, 20 Aug 2022 18:24:58 +0000 (19:24 +0100)]
Avoid repeated g_log_set_writer_func in tests

Since GLib 2.73.0 it can only be called once per process.

Based on commit 78c153ae in GTK 4, but combining the icontheme test's
two custom log writers into one log writer that serves both purposes,
to avoid the need for a subprocess.

Co-authored-by: Matthias Clasen <mclasen@redhat.com>
Resolves: https://gitlab.gnome.org/GNOME/gtk/-/issues/5119

3 years agoMerge branch 'static-builds-hinstance' into 'gtk-3-24'
Matthias Clasen [Thu, 18 Aug 2022 18:05:36 +0000 (18:05 +0000)]
Merge branch 'static-builds-hinstance' into 'gtk-3-24'

GdkWin32: Add support for static builds

See merge request GNOME/gtk!4538

3 years agoMerge branch 'fix_signal_blocked_on_update_relative_to' into 'gtk-3-24'
Matthias Clasen [Wed, 17 Aug 2022 11:17:28 +0000 (11:17 +0000)]
Merge branch 'fix_signal_blocked_on_update_relative_to' into 'gtk-3-24'

Unblock signal on update_relative_to in Gtk.Popover

See merge request GNOME/gtk!4589

3 years agoFurther simplification
Sergio Costas [Tue, 16 Aug 2022 21:14:44 +0000 (23:14 +0200)]
Further simplification

3 years agoUpdate Catalan translation
Jordi Mas [Mon, 15 Aug 2022 22:05:48 +0000 (00:05 +0200)]
Update Catalan translation

3 years agoRemove unneeded unblock
Sergio Costas [Mon, 15 Aug 2022 13:35:06 +0000 (15:35 +0200)]
Remove unneeded unblock

When a signal handler is disconnected, it doesn't matter if it
was blocked or not, so there's no need to unlock it before
disconnection.

3 years agoUnblock signal on update_relative_to in Gtk.Popover
Sergio Costas [Mon, 21 Mar 2022 15:46:51 +0000 (16:46 +0100)]
Unblock signal on update_relative_to in Gtk.Popover

When a Gtk.Popover loses the focus, it blocks the grab_notify
signal from the associated widget, and it unblocks it when it
regains the focus. To know whether the signal is or not blocked,
it uses the priv->grab_notify_blocked flag.

On the other hand, when the method update_relative_to() is
called, all the signals connected to the old associated widget
are disconnected, and connected to the new widget.

Unfortunately, the priv->grab_notify_blocked flag isn't updated,
which means that if update_relative_to() is called while the
Gtk.Popover doesn't have the focus (for example, because the
user switched into another application), when the focus is
regained, the code in window_focus_in() will see that
priv->grab_notify_blocked is TRUE and will unblock the handler;
but that handler wasn't blocked because the one that was blocked
was disconnected when update_relative_to() was called. This
shows a WARNING in the console:

GLib-GObject-WARNING **: ../../../gobject/gsignal.c:2692: handler '5146' of instance '0x556912f84f40' is not blocked

This patch fixes this.

Fix https://gitlab.gnome.org/GNOME/gtk/-/issues/4777

3 years agoMerge branch 'wip/carlosg/seat-grab-pointer-hint' into 'gtk-3-24'
Matthias Clasen [Fri, 12 Aug 2022 16:37:03 +0000 (16:37 +0000)]
Merge branch 'wip/carlosg/seat-grab-pointer-hint' into 'gtk-3-24'

gdk/wayland: Drop motion hint mask from seat grab event masks

See merge request GNOME/gtk!4948

3 years agogdk/wayland: Drop motion hint mask from seat grab event masks
Carlos Garnacho [Thu, 11 Aug 2022 23:36:59 +0000 (01:36 +0200)]
gdk/wayland: Drop motion hint mask from seat grab event masks

At best, it's just an awkward event mask sitting there for a backend
that does not need it. At worst, this may result in motion events being
eaten away in the right set of circumstances.

Avoid the pointer motion hint mask, and rely on events being further
than hints.

Related: https://gitlab.gnome.org/GNOME/gimp/-/merge_requests/534#note_1526935

3 years agoMerge branch 'more-vs-proj-updates' into 'gtk-3-24'
Chun-wei Fan [Mon, 8 Aug 2022 12:24:57 +0000 (12:24 +0000)]
Merge branch 'more-vs-proj-updates' into 'gtk-3-24'

More imrpovements to Visual Studio projects (docs and PangoFT2 support, code generation flexibility)

See merge request GNOME/gtk!4934

3 years agoREADME.win32.md: Improve Visual Studio build instructions
Chun-wei Fan [Mon, 8 Aug 2022 11:39:37 +0000 (19:39 +0800)]
README.win32.md: Improve Visual Studio build instructions

Make the options and variable clearer to people.  Sorry, this was
a bit long overdue.

3 years agowin32/config-msvc.mak: Improve flexibility
Chun-wei Fan [Mon, 8 Aug 2022 11:32:11 +0000 (19:32 +0800)]
win32/config-msvc.mak: Improve flexibility

Allow one to specify INCLUDEDIR and LIBDIR to locate the headers needed
for generating sources, if they are not under $(PREFIX)\include and
$(PREFIX)\lib, repsectively.

3 years agowin32/generate-msvcprojs.mak: Simplify enabling PangoFT2
Chun-wei Fan [Mon, 8 Aug 2022 10:56:24 +0000 (18:56 +0800)]
win32/generate-msvcprojs.mak: Simplify enabling PangoFT2

... in the gtk-3 Visual Studio project.  This will allow one who wishes to use
the font features items that uses the older PangoFT2-based APIs that is used
before Pango 1.44.0 and HarfBuzz-2.2.0 an easier way to do that, by
regenerating the gtk-3 project files with the necessary items enabled.

The font features demo still needs to be explicitly enabled, though, as
before.

3 years agoREADME.win32: Convert to MarkDown
Chun-wei Fan [Mon, 8 Aug 2022 09:28:22 +0000 (17:28 +0800)]
README.win32: Convert to MarkDown

Make it easier on the eye, and put together portions that are repetitive.

3 years agoMerge branch 'msvcproj-git' into 'gtk-3-24'
Chun-wei Fan [Fri, 5 Aug 2022 12:01:37 +0000 (12:01 +0000)]
Merge branch 'msvcproj-git' into 'gtk-3-24'

Support building with Visual Studio projects from a GIT checkout

See merge request GNOME/gtk!4928

3 years agoREADME.win32: Mention about (re-)generating project files
Chun-wei Fan [Fri, 5 Aug 2022 11:25:32 +0000 (19:25 +0800)]
README.win32: Mention about (re-)generating project files

This adds instructions to aid one to build with the Visual Studio projects
directly from a GIT checkout, or to re-generate the project files with
various options and features enabled (which are not enabled by default
in the release tarballs).

3 years agoREADME_FEATURES_MSVC.md: Mention about enabling EGL
Chun-wei Fan [Fri, 5 Aug 2022 11:08:30 +0000 (19:08 +0800)]
README_FEATURES_MSVC.md: Mention about enabling EGL

...in a more automated way, since the NMake Makefiles now support doing so.

3 years agoVisual Studio build instructions: Use MarkDown
Chun-wei Fan [Fri, 5 Aug 2022 11:02:39 +0000 (19:02 +0800)]
Visual Studio build instructions: Use MarkDown

Make the documentation for enabling features us MarkDown to make it easier on
the eye.

3 years agowin32: Add NMake Makefile to bootstrap projects
Chun-wei Fan [Fri, 5 Aug 2022 05:28:50 +0000 (13:28 +0800)]
win32: Add NMake Makefile to bootstrap projects

This adds a NMake Makefile to generate the needed items that are normally
generated during `./configure`, as well as to generate the full Visual Studio
projects and property sheets, so that one can use the Visual Studio projects
to build GTK directly from a GIT checkout.  A 'clean' target is also provided
to remove these generated artifacts.  This also generates the headers that are
needed to build broadwayd, since they are currently dist'ed with the tarballs
but are not in the GIT repo.

This will not be dist'ed, as this is primarily meant for GIT checkouts only.

3 years agowin32/gen-version-items.py: Retrieve version info from configure.ac
Chun-wei Fan [Fri, 5 Aug 2022 04:56:49 +0000 (12:56 +0800)]
win32/gen-version-items.py: Retrieve version info from configure.ac

...and use that info if no version and/or interface age was specified.  This
way, we can use this script to help bootstrap builds from Visual Studio
projects directly from a GIT checkout.

3 years agowin32: Split out MSVC project generating
Chun-wei Fan [Fri, 5 Aug 2022 03:42:00 +0000 (11:42 +0800)]
win32: Split out MSVC project generating

...into a NMake Makefile snippet of its own, to make things clearer and easier
to maintain.  The regenerating target should still be invoked using
generate-msvc.mak.

3 years agowin32/generate-msvc.mak: Clean up a bit again
Chun-wei Fan [Fri, 5 Aug 2022 03:01:44 +0000 (11:01 +0800)]
win32/generate-msvc.mak: Clean up a bit again

Reduce some more repetitions.

3 years agogenerate-msvc.mak: Support generating libgtk/gailutil projects
Chun-wei Fan [Thu, 4 Aug 2022 08:26:35 +0000 (16:26 +0800)]
generate-msvc.mak: Support generating libgtk/gailutil projects

This adds rules to allow (re-)generating the libgtk and libgail-util Visual
Studio projects, which needed some tinkering since we don't want to fall into
the nasty U1095 error.

3 years agoconfig-msvc.mak.in: Regroup items
Chun-wei Fan [Thu, 4 Aug 2022 05:01:16 +0000 (13:01 +0800)]
config-msvc.mak.in: Regroup items

Improve readability

3 years agogenerate-msvc.mak: Add rules to copy the static VS2010 projects
Chun-wei Fan [Thu, 4 Aug 2022 04:56:53 +0000 (12:56 +0800)]
generate-msvc.mak: Add rules to copy the static VS2010 projects

... for VS2012~2022, so that they can be ready for use to build with later
Visual Studio versions.

3 years agowin32/generate-msvc.mak: Support generating all GDK projects
Chun-wei Fan [Wed, 3 Aug 2022 10:16:30 +0000 (18:16 +0800)]
win32/generate-msvc.mak: Support generating all GDK projects

This extends the support to generate all the GDK Visual Studio projects, which
include GDK, GDK-Broadway and broadwayd, in addition to GDK-Win32.  The rule
to regenerate the GDK-Win32 project is now changed to regenerate all GDK
projects, with or without EGL support in GDK-Win32.

Also, remove extraneous blank spaces in win32/vs10/broadwayd.vcxprojin to avoid
errors when generating the full VS2010+ broadwayd Visual Studio projects with
this update.

Use inference rules and re-group things a bit, to make things cleaner and
clearer.

3 years agowin32/generate-msvc.mak: Add rules to create GDK-Win32 MSVC projects
Chun-wei Fan [Wed, 3 Aug 2022 09:00:08 +0000 (17:00 +0800)]
win32/generate-msvc.mak: Add rules to create GDK-Win32 MSVC projects

This will allow one to quickly re-generate the Gdk-Win32 Visual Studio
projects with or without EGL/libANGLE support.  Since some rules are shared
with the ones that we use to generate the gtk3-demo projects, clean things
up a bit.

3 years agoVisual Studio: Add .gitignore's
Chun-wei Fan [Wed, 3 Aug 2022 09:08:59 +0000 (17:08 +0800)]
Visual Studio: Add .gitignore's

We don't need to track the project files and property sheets that are generated
from their templates, and we don't want to track the demos.h(.win32) that are
mainly used for the Visual Studio builds, which are also generated.

3 years agoMerge branch 'msvc-broadway-improvements' into 'gtk-3-24'
Chun-wei Fan [Fri, 5 Aug 2022 10:30:01 +0000 (10:30 +0000)]
Merge branch 'msvc-broadway-improvements' into 'gtk-3-24'

GDK-Broadway build improvements for Visual Studio

See merge request GNOME/gtk!4927

3 years agoMerge branch 'msvc-build-pot' into 'gtk-3-24'
Chun-wei Fan [Fri, 5 Aug 2022 10:24:20 +0000 (10:24 +0000)]
Merge branch 'msvc-build-pot' into 'gtk-3-24'

win32/generate-msvc.mak: Add rules for gtk30[-properties].pot

See merge request GNOME/gtk!4926

3 years agoMerge branch 'improve-demos-h-msg' into 'gtk-3-24'
Chun-wei Fan [Fri, 5 Aug 2022 10:20:58 +0000 (10:20 +0000)]
Merge branch 'improve-demos-h-msg' into 'gtk-3-24'

generate-msvc.mak: Improve gtk-demo config message

See merge request GNOME/gtk!4925

3 years agogenerate-msvc.mak: Improve gtk-demo config message
Chun-wei Fan [Fri, 5 Aug 2022 03:27:47 +0000 (11:27 +0800)]
generate-msvc.mak: Improve gtk-demo config message

Make the messages to show the configuration when we (re-)generate the
demos.h.win32 and Visual Studio projects show at the beginning, and make the
messages clearer.

3 years agowin32/generate-msvc.mak: Add rules for gtk30[-properties].pot
Chun-wei Fan [Tue, 31 May 2022 10:19:10 +0000 (18:19 +0800)]
win32/generate-msvc.mak: Add rules for gtk30[-properties].pot

This adds rules using xgettext to generate gtk30.pot and
gtk30-properties.pot.

Currently, the XGETTEXT=... must be supplied, since it will likely come
from a MSYS2 or Cygwin installation on Windows.

This will help us get closer to support building more directly from a
GIT checkout with the Visual Studio projects

3 years agowin32/generate-msvc.mak: Add rules to generate broadway headers
Chun-wei Fan [Fri, 5 Aug 2022 08:22:29 +0000 (16:22 +0800)]
win32/generate-msvc.mak: Add rules to generate broadway headers

This allows one to (re-)generate clienthtml.h and broadwayjs.h that is needed
to build broadwayd with the NMake Makefiles.  Currently, since these headers
are currently dist'ed, the rules added here are mainly of use to build from a
GIT checkout.

3 years agogdk/broadway/Makefile.am: Correct build variable
Chun-wei Fan [Wed, 3 Aug 2022 09:17:20 +0000 (17:17 +0800)]
gdk/broadway/Makefile.am: Correct build variable

They should be enclosed by $() not ${}.

3 years agoMerge branch 'win32-nahimic-nv-notes-3' into 'gtk-3-24'
Matthias Clasen [Tue, 2 Aug 2022 11:10:04 +0000 (11:10 +0000)]
Merge branch 'win32-nahimic-nv-notes-3' into 'gtk-3-24'

README.win32: Add note on using OpenGL on Windows

See merge request GNOME/gtk!4916

3 years agoREADME.win32: Add note on using OpenGL on Windows
Chun-wei Fan [Mon, 1 Aug 2022 04:32:53 +0000 (12:32 +0800)]
README.win32: Add note on using OpenGL on Windows

...when running on a system with nVidia graphics with Nahimic installed, since
a known issue within the graphics drivers and/or Nahimic can cause random
crashes and issues when OpenGL (G[t|d]kGLArea) is being used.

This will close issue #4113--sadly, this issue is an issue that is beyond our
reach to try fixing within GTK.

3 years agoUpdate Catalan translation
Jordi Mas [Mon, 1 Aug 2022 18:46:05 +0000 (20:46 +0200)]
Update Catalan translation

3 years agoUpdate Abkhazian translation
Nart Tlisha [Thu, 28 Jul 2022 19:16:33 +0000 (19:16 +0000)]
Update Abkhazian translation

3 years agoUpdate Occitan translation
Quentin PAGÈS [Tue, 26 Jul 2022 19:24:15 +0000 (19:24 +0000)]
Update Occitan translation

3 years agoAdd Abkhazian translation
Nart Tlisha [Tue, 26 Jul 2022 11:14:42 +0000 (11:14 +0000)]
Add Abkhazian translation

3 years agoUpdate Georgian translation
Zurab Kargareteli [Mon, 25 Jul 2022 07:41:00 +0000 (07:41 +0000)]
Update Georgian translation

3 years agoUpdate Occitan translation
Quentin PAGÈS [Fri, 22 Jul 2022 22:23:11 +0000 (22:23 +0000)]
Update Occitan translation

3 years agoMerge branch 'buffer-func-annotation' into 'gtk-3-24'
Matthias Clasen [Fri, 22 Jul 2022 12:41:46 +0000 (12:41 +0000)]
Merge branch 'buffer-func-annotation' into 'gtk-3-24'

Fix annotation of serialize and deserialize function

See merge request GNOME/gtk!4893

3 years agoRemove annotation for GError
Cédric Krier [Wed, 20 Jul 2022 07:52:40 +0000 (09:52 +0200)]
Remove annotation for GError

3 years agoFix annotation of serialize and deserialize function
Cédric Krier [Tue, 19 Jul 2022 21:50:27 +0000 (21:50 +0000)]
Fix annotation of serialize and deserialize function

3 years agoMerge branch 'wip/swilmet/improve-style-context-docs' into 'gtk-3-24'
Matthias Clasen [Wed, 13 Jul 2022 15:48:25 +0000 (15:48 +0000)]
Merge branch 'wip/swilmet/improve-style-context-docs' into 'gtk-3-24'

docs: improve doc of gtk_style_context_get()

See merge request GNOME/gtk!4867

3 years agodocs: improve doc of gtk_style_context_get()
Sébastien Wilmet [Wed, 13 Jul 2022 15:12:42 +0000 (17:12 +0200)]
docs: improve doc of gtk_style_context_get()

When using this function in GtkSourceView (for GTK 3), there was a
mistake for retrieving a GdkRGBA value.

So, better document the function to avoid further mistakes.

3 years agoUpdate Persian translation
Danial Behzadi [Fri, 8 Jul 2022 21:40:39 +0000 (02:10 +0430)]
Update Persian translation

3 years ago[quartz] Remove extra reference on layer's cairo_surface.
John Ralls [Thu, 30 Jun 2022 22:27:03 +0000 (15:27 -0700)]
[quartz] Remove extra reference on layer's cairo_surface.

3 years ago[quartz] shouldInheritContentsScale from 10.7+ instead of 10.14+.
John Ralls [Thu, 30 Jun 2022 22:25:50 +0000 (15:25 -0700)]
[quartz] shouldInheritContentsScale from 10.7+ instead of 10.14+.

3 years agoMerge branch 'gtk-3-24' into 'gtk-3-24'
Matthias Clasen [Fri, 24 Jun 2022 19:28:14 +0000 (19:28 +0000)]
Merge branch 'gtk-3-24' into 'gtk-3-24'

gtkmodifierstyle.c: Release symbolic color memory

See merge request GNOME/gtk!4830

3 years agogtkmodifierstyle.c: Release symbolic color memory
Xu Shaohua [Fri, 24 Jun 2022 02:04:25 +0000 (10:04 +0800)]
gtkmodifierstyle.c: Release symbolic color memory

3 years agoMerge branch 'symbolic-hc-3' into 'gtk-3-24'
Matthias Clasen [Thu, 23 Jun 2022 18:19:00 +0000 (18:19 +0000)]
Merge branch 'symbolic-hc-3' into 'gtk-3-24'

Wayland/screen: Don't force HighContrast icon theme

See merge request GNOME/gtk!4803

3 years agowayland/screen: Don't force HighContrast icon theme
Florian Müllner [Tue, 7 Jun 2022 17:37:31 +0000 (19:37 +0200)]
wayland/screen: Don't force HighContrast icon theme

The theme is considered deprecated in favor of symbolic icons from
the regular theme.

3 years agoMerge branch 'matthiasc/gtk-bump-fedora' into 'gtk-3-24'
Matthias Clasen [Thu, 23 Jun 2022 13:39:22 +0000 (13:39 +0000)]
Merge branch 'matthiasc/gtk-bump-fedora' into 'gtk-3-24'

ci: Bump Fedora base image

See merge request GNOME/gtk!4826

3 years agoMerge branch 'bad-popup-extents-gtk3' into 'gtk-3-24'
Matthias Clasen [Thu, 23 Jun 2022 12:00:11 +0000 (12:00 +0000)]
Merge branch 'bad-popup-extents-gtk3' into 'gtk-3-24'

[gtk3] [x11] Fix coordinate space of rect in gdk_x11_window_get_frame_extents when called on popups.

See merge request GNOME/gtk!4821

3 years agoKeep version numbers sequential
Matthias Clasen [Thu, 23 Jun 2022 11:44:39 +0000 (07:44 -0400)]
Keep version numbers sequential

Our ci image versions don't correspond to Fedora
release numbers. Changing that just for one branch
would be more confusing than helpful, I think.

3 years ago[quartz] Fix build on macOS versions before 10.14.
John Ralls [Tue, 21 Jun 2022 00:15:49 +0000 (17:15 -0700)]
[quartz] Fix build on macOS versions before 10.14.

shouldInheritContentScale was introduced in 10.14.

3 years ago[gtk3] [x11] Fix coordinate space of rect in gdk_x11_window_get_frame_extents when...
Emilio Cobos Álvarez [Mon, 20 Jun 2022 08:43:06 +0000 (10:43 +0200)]
[gtk3] [x11] Fix coordinate space of rect in gdk_x11_window_get_frame_extents when called on popups.

This is the same fix as !4820, but applied to the gtk 3 branch.

3 years agoMerge branch 'gtk3-adwaita-maximized-ssd-no-border' into 'gtk-3-24'
Matthias Clasen [Sun, 19 Jun 2022 17:05:07 +0000 (17:05 +0000)]
Merge branch 'gtk3-adwaita-maximized-ssd-no-border' into 'gtk-3-24'

Adwaita: Hide SSD box-shadow border on maximized windows

See merge request GNOME/gtk!4819

3 years agoAdwaita: Hide SSD box-shadow border on maximized windows
Sebastian Keller [Sun, 19 Jun 2022 14:24:59 +0000 (16:24 +0200)]
Adwaita: Hide SSD box-shadow border on maximized windows

The 1px shadow was showing up on adjacent monitors when a SSD window was
maximized. Additionally this was causing mutter to skip direct scanout
of these windows, because they extend beyond the screen.

Related: https://gitlab.gnome.org/GNOME/mutter/-/issues/2304

3 years agoci: Bump Fedora base image
Florian Müllner [Fri, 17 Jun 2022 15:47:45 +0000 (17:47 +0200)]
ci: Bump Fedora base image

F31 is EOL and no longer satisfies our ATK dependency. Bump it to
F35 to get gtk3's CI into a working state again.

3 years agoMerge branch 'gdk-win32-gtk-overlay-scrolling-gtk3' into 'gtk-3-24'
Luca Bacci [Fri, 17 Jun 2022 09:49:39 +0000 (09:49 +0000)]
Merge branch 'gdk-win32-gtk-overlay-scrolling-gtk3' into 'gtk-3-24'

GdkWin32: Add code for gtk-overlay-scrolling setting

See merge request GNOME/gtk!4817

3 years agoGdkWin32: Add code for gtk-overlay-scrolling setting
Luca Bacci [Fri, 17 Jun 2022 09:04:54 +0000 (11:04 +0200)]
GdkWin32: Add code for gtk-overlay-scrolling setting

Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4899

3 years agoMerge branch 'msvc-proj-more-data' into 'gtk-3-24'
Chun-wei Fan [Thu, 16 Jun 2022 11:39:23 +0000 (11:39 +0000)]
Merge branch 'msvc-proj-more-data' into 'gtk-3-24'

Visual Studio projects: Make installed data files better match the autotools/Meson builds

See merge request GNOME/gtk!4814

3 years agoVisual Studio builds: Add optional rules to generate translations
Chun-wei Fan [Thu, 16 Jun 2022 10:31:37 +0000 (18:31 +0800)]
Visual Studio builds: Add optional rules to generate translations

Add a target in the install-msvc.mak file that enables one to generate
the translations (.mo) files using msgfmt from the .po catalog files.

Add an entry in config-msvc.mak[.in] so that one can use it to configure
a custom location for the msgfmt.exe program, since it is harder to
install with Visual Studio, so that one can use a prebuilt copy from
Cygwin or MSYS2, for instance.

3 years agoMSVC projects: Generate and install Emoji GResource data
Chun-wei Fan [Mon, 30 May 2022 11:50:16 +0000 (19:50 +0800)]
MSVC projects: Generate and install Emoji GResource data

Generate the full GResource XML files for the Emoji data, and generate
the binary GResource data from them and copy them as appropriate.

At this point, the installed data files are in-line with what the Meson
builds install, sans the processed translation files.

3 years agoMSVC projects: Also copy the build auxiliary files
Chun-wei Fan [Mon, 30 May 2022 11:25:48 +0000 (19:25 +0800)]
MSVC projects: Also copy the build auxiliary files

This does what the Meson build files also do, so that people can have
the m4 module, the ITS files as RelaxNG files if they choose to use them
anyways.

3 years agoMSVC projects: Also "install" the gtk3-demo symbolic icon
Chun-wei Fan [Mon, 30 May 2022 11:24:05 +0000 (19:24 +0800)]
MSVC projects: Also "install" the gtk3-demo symbolic icon

Follows what is done in the Meson/autotools builds.

3 years agoUpdate Catalan translation
Jordi Mas [Tue, 14 Jun 2022 17:45:46 +0000 (19:45 +0200)]
Update Catalan translation

3 years ago[quartz] Ensure valid GdkWindowImplQuartz references.
John Ralls [Mon, 6 Jun 2022 19:29:42 +0000 (12:29 -0700)]
[quartz] Ensure valid GdkWindowImplQuartz references.

In case of an offscreen window find its onscreen embedder, and NULL
any GdkWindowImpl that's not quartz, checking all return values.

This replaces 16ded683, removing its unnecessary search_for_nearest
functions.

Any unchecked cast of a GdkWindowImpl to GdkWindowImplQuartz risks at
least getting an invalid member reference, not just the ones in
gdk_quartz_window_get_foo, and all calls to gdk_quartz_window_get_foo need
to be checked, not just Gtk's internal calls. The motivation was that
transient_for was getting set on a Gimp offscreen window and that caused a
crash in raise_transient.

3 years ago[quartz] Ensure GdkWindowQuartz members are either valid or NULL.
John Ralls [Sun, 5 Jun 2022 22:31:35 +0000 (15:31 -0700)]
[quartz] Ensure GdkWindowQuartz members are either valid or NULL.

3 years ago[quartz] ensure that the copy region is fully enclosed by the drawn surface.
John Ralls [Sun, 5 Jun 2022 22:23:56 +0000 (15:23 -0700)]
[quartz] ensure that the copy region is fully enclosed by the drawn surface.

3 years ago[quartz] Handle scale changes using NSView::shouldInheritContentsScale.
John Ralls [Tue, 31 May 2022 21:43:29 +0000 (14:43 -0700)]
[quartz] Handle scale changes using NSView::shouldInheritContentsScale.

Includes creating the CVPixelBuffer to supply the layer contents when
creating the cairo_image_surface, which reduces the number of them created
at the wrong scale.

3 years agoUpdate Georgian translation
Zurab Kargareteli [Sun, 5 Jun 2022 17:13:20 +0000 (17:13 +0000)]
Update Georgian translation

3 years agoMerge branch 'msvcproj-demos' into 'gtk-3-24'
Chun-wei Fan [Tue, 31 May 2022 09:00:44 +0000 (09:00 +0000)]
Merge branch 'msvcproj-demos' into 'gtk-3-24'

Visual Studio projects: Improve demos build process

See merge request GNOME/gtk!4781

3 years agoMSVC Projects: Build widget factory demo
Chun-wei Fan [Fri, 27 May 2022 11:26:06 +0000 (19:26 +0800)]
MSVC Projects: Build widget factory demo

Build the widget factory demo in the Visual Studio projects, and install
the icon files that it needs.

3 years agoMSVC Projects: Generate widget factory GResource sources
Chun-wei Fan [Fri, 27 May 2022 10:47:35 +0000 (18:47 +0800)]
MSVC Projects: Generate widget factory GResource sources

Add rules in the helper NMake Makefiles to generate the GResource
sources for gtk3-widget-factory.  This prepares for us to add project
files to build that demo program.

3 years agobuild: Don't generate icon browser MSVC project
Chun-wei Fan [Fri, 27 May 2022 10:28:19 +0000 (18:28 +0800)]
build: Don't generate icon browser MSVC project

The source listing is not likely to change for this one, so clean up the
build files a bit, and make the gtk3-icon-browser MSVC project a
complete one instead of a template.

3 years agobuild: Do not generate gtk3-demo-application MSVC project
Chun-wei Fan [Fri, 27 May 2022 10:18:56 +0000 (18:18 +0800)]
build: Do not generate gtk3-demo-application MSVC project

Clean up build files a bit, as there is not much point using a
'dist-hook' to generate the Visual Studio project file for this program.

3 years agoMSVC projects: Generate demo sources in IntDir
Chun-wei Fan [Thu, 26 May 2022 11:45:47 +0000 (19:45 +0800)]
MSVC projects: Generate demo sources in IntDir

This is to reduce the pollution in the souce directories.  Update the
include paths accordingly.

3 years agowin32/generate-msvc.mak: Split up rule to regenerate demos.h.win32
Chun-wei Fan [Thu, 26 May 2022 09:45:15 +0000 (17:45 +0800)]
win32/generate-msvc.mak: Split up rule to regenerate demos.h.win32

This way, we can re-use items when we want to support generating project
files from the templates, such as building with project files directly
from a GIT checkout, or when we add sources and want to quickly add them
into the project files.

3 years agoMSVC Projects: Rename Makefile variable
Chun-wei Fan [Thu, 26 May 2022 08:53:34 +0000 (16:53 +0800)]
MSVC Projects: Rename Makefile variable

Use VS1X instead of VS10 in the variable names in the NMake Makefiles,
since the VS2010 MSBuild Visual Studio project files really apply to all Visual
Studio versions at or after VS2010.

Also use variable substitution here to ease future maintenance.

3 years agoMerge branch 'msvcproj-nmake-robust' into 'gtk-3-24'
Chun-wei Fan [Tue, 31 May 2022 07:28:16 +0000 (07:28 +0000)]
Merge branch 'msvcproj-nmake-robust' into 'gtk-3-24'

MSVC projects: Make helper NMake Makefiles more robust and faster

See merge request GNOME/gtk!4780

3 years agoVisual Studio projects: Speed up build
Chun-wei Fan [Tue, 31 May 2022 05:55:13 +0000 (13:55 +0800)]
Visual Studio projects: Speed up build

...for the sources and header generating phase, so that we can reduce
the number of times that we generate the source file lists that we need.

3 years agoMerge branch 'msvcproj-py3-req' into 'gtk-3-24'
Chun-wei Fan [Tue, 31 May 2022 06:28:43 +0000 (06:28 +0000)]
Merge branch 'msvcproj-py3-req' into 'gtk-3-24'

Visual Studio projects: Make it clear that Python 3.x is now recommended

See merge request GNOME/gtk!4779

3 years agoREADME.win32: Mention the possibility of using Python-2.7.x
Chun-wei Fan [Tue, 31 May 2022 06:10:01 +0000 (14:10 +0800)]
README.win32: Mention the possibility of using Python-2.7.x

It is probably still possible with older GLib and GObject-Introspection
versions, but it is certainly not recommended with the advent of Meson.

One will not be able to re-generate demos.h.win32 (for
enabling/disabling the Font Features Demo) with Python 2.7.x-Python 3.x
or PERL must be used.

3 years agoMSVC projects: Make helper NMake Makefiles more robust
Chun-wei Fan [Thu, 26 May 2022 07:51:15 +0000 (15:51 +0800)]
MSVC projects: Make helper NMake Makefiles more robust

Append the detected Visual Studio version and target arch to the various
NMake Makefile snippets we generate on the fly, so that if multiple
items access the helper NMake Makefiles at the same time, we will be
much less prone to trouble.

This is not 100% fool-proof, but should make things much more robust when
attempting to build via different Visual Studio versions and configs at
the same time.

3 years agoVisual Studio projects: Make it clear Python 3.x is now required
Chun-wei Fan [Thu, 26 May 2022 04:35:23 +0000 (12:35 +0800)]
Visual Studio projects: Make it clear Python 3.x is now required

The scripts that are used during the build to generate the sources now
do require Python 3.x to work, so make this clear to people.

In the Visual Studio projects, update the default Python installation to
correspond with Python 3.7.x or later, which is the lowest supported
version series of Python at this point.

3 years agoMerge branch 'gtk-3-24-fix-gimp' into 'gtk-3-24'
Matthias Clasen [Fri, 27 May 2022 21:26:51 +0000 (21:26 +0000)]
Merge branch 'gtk-3-24-fix-gimp' into 'gtk-3-24'

macos: Fix to offscreen window selections in Gimp 2.99

See merge request GNOME/gtk!4305

3 years agomacos: Fix to offscreen window selections in Gimp 2.99
Lukas Oberhuber [Fri, 27 May 2022 21:26:50 +0000 (21:26 +0000)]
macos: Fix to offscreen window selections in Gimp 2.99

3 years agoMerge branch 'wayland-cursor-size' into 'gtk-3-24'
Matthias Clasen [Fri, 27 May 2022 11:02:22 +0000 (11:02 +0000)]
Merge branch 'wayland-cursor-size' into 'gtk-3-24'

wayland/cursor: Sanity check cursor image size

See merge request GNOME/gtk!4381